// http://campus.51job.com/pxjy/job.html
// 南京市环球雅思培训中心


var spider = require('../../dao/spider');
var cheerio = require('cheerio');
var url_node = require('url');
var Iconv = require('iconv-lite');
var pinyin = require('node-pinyin');
var insertDB = require('../../dao/insert.db');
var utils = require('../../dao/utils');
var request = require('request');
var fs = require('fs');

const company = '南京市环球雅思培训中心';
var index = 'http://campus.51job.com/pxjy/job.html';

var url = "http://campus.51job.com/pxjy/job.html";



module.exports = function(successCal){
    spider.successCal = successCal;
    spider.spider({url:url},callback);
};


function callback(err, body, _url) {
    if (err) {
        console.log(err);
        return;
    }

    var res;
    try {
        res = body.toString('utf-8');
    } catch (e) {
        console.log(e);
    }

    var $ = cheerio.load(res);

    dataInit($,url);

   
       
    
}

// page页数据处理
function dataInit($, url) {

    var urlObj = url_node.parse(url);
    var protocol = urlObj.protocol;
    var hostname = urlObj.hostname;

    var host = protocol + "//" + hostname;
    // http://zhaopin.xdf.cn/public/pr-fe/module/social/job-details.html?nav=2&positionId=748


    var lists = $('.jobBox .job');

    for (var i = 0; i < lists.length; i++) {

        var item = lists.eq(i);

        var localEl = item.find('.btnBox .job-btn');
        var arrry = [];
        for(var j=0;j<localEl.length;j++){
            arrry.push(localEl.eq(j).text());
        }

        var location = arrry.join(',');

        var description = "岗位职责："+item.find('.job-info').text().split('岗位职责：')[1];

        var data = {
            "url": url,  // jd详情页的地址
            'edu':'', // 最低学历
            'exp':[], // 所需工作经验，比如[3,5]表示3到5年,[3]表示3年，[]表示无经验要求
            'name': utils.trim(item.find(".job-name span").text()), // 职位名称*
            'date': '', // 职位发布日期，字符串形式即可，后期统一转换
            'lang':'', // 对语言的要求
            'place':'', // 办公具体地址
            'major': '', // 专业要求
            'count': '', // 招聘数量
            'salary':[] , // 薪资待遇，[5000,8000]表示月薪5到8千，[4000]表示4千，[]表示没有写明
            'toSchool':true, // 是否是面向校园招聘，本次官网抓取一律都是校园招聘，所以此处都是True
            'welfare':[], // 福利待遇，比如五险一金、十三薪之类的，保存成数组
            'funType':'', // 职能类型，比如证券经纪人是证券/期货/外汇经纪人
            'company': company, // 企业名称
            'location': location, // 所在城市
            'industry': '',// 企业所在行业
            'keywords': [], // 此岗位的搜索关键字 
            'platform': 'offical',// 针对官网抓取时此处一律保存为offical
            'searchKeyword':'',// 搜索的关键字，由于是官网抓取所以此处一律为空字符串
            'description': utils.trim(description),// 职位的详细描述，包括职责、要求之类的
            'subIndustry':'',// 一律为空字符串
            'stime': new Date() // 抓取时间
        };

        insertDB(data);
    }


    spider.successCal(null,'');
    spider.successCall = function(){};
}